package com.ruoyi.psi.sale.collection.service;

import com.ruoyi.psi.sale.collection.domain.CollectionList;
import com.ruoyi.psi.sale.collection.domain.SaleCollection;

import java.util.List;

/**
 * 销售收款
 * 业务层
 * @author Drj 2021/6/28
 */
public interface ICollectionService {
    /**
     * 查询所有销售收款
     * @param collection 搜索条件
     * @return
     */
    public List<SaleCollection> selectCollectionList(SaleCollection collection);

    /**
     * 根据编号查询
     * @param collectionId 销售收款编号
     * @return
     */
    public SaleCollection selectCollectionById(String collectionId);

    /**
     * 新增销售收款
     * @param collection
     * @return
     */
    public int insertCollection(SaleCollection collection) throws Exception;

    /**
     * 更新销售收款
     * @param collection
     * @return
     */
    public int updateCollection(SaleCollection collection) throws Exception;

    /**
     * 删除销售收款
     * @param collection
     * @return
     */
    public int updateCollectionDeleteFlag(SaleCollection collection);
    /**
     * 新增销售收款时查询指定客户对应的销售订单以及销售退货单据
     * @param customerInfoId 客户编号
     * @return
     */
    public List<CollectionList> getCollectionBill(String customerInfoId);
}
